package org.quasar.m2dm;

import java.util.Arrays;
//import java.util.HashMap;
//import java.util.Map;

import org.quasar.juse.api.JUSE_BasicFacade;
import org.quasar.juse.api.JUSE_ProgramingFacade;
import org.quasar.juse.api.implementation.BasicFacade;
import org.quasar.juse.api.implementation.ProgramingFacade;
import org.tzi.use.uml.ocl.value.EnumValue;
//import org.tzi.use.uml.mm.Annotatable;
//import org.tzi.use.uml.mm.MClass;
//import org.tzi.use.uml.mm.MClassInvariant;
//import org.tzi.use.uml.mm.MElementAnnotation;
//import org.tzi.use.uml.mm.MPrePostCondition;
import org.tzi.use.uml.ocl.value.StringValue;
import org.tzi.use.uml.sys.MLink;
import org.tzi.use.uml.sys.MLinkObject;
import org.tzi.use.uml.sys.MObject;

/***********************************************************
 * @author fba 24 de Mar de 2012
 * 
 ***********************************************************/
public final class FLAME
{
	private final static String	USE_BASE_DIRECTORY	= "C:/Program Files (x86)/use-3.0.6";

	 private final static String WORKING_DIRECTORY = "D:\\Dropbox\\TOPICS\\_ModelDrivenEngineering\\OCL&METRICS\\MOOD_FLAME";
	 private final static String METAMODEL_FILE = "UML13_v14.use";
//	 private final static String SOIL_FILE = "euro2012.soil";



	/***********************************************************
	 * @param args
	 * @throws InterruptedException
	 ***********************************************************/
	public static void main(String[] args) throws InterruptedException
	{
		 loadFLAME(args);		
	}


	/***********************************************************
	* 
	***********************************************************/
	static void loadFLAME(String[] args)
	{
		JUSE_ProgramingFacade api = new ProgramingFacade();

		api.initialize(args, USE_BASE_DIRECTORY, WORKING_DIRECTORY);

		api.compileSpecification(METAMODEL_FILE, true);

		api.command("check");

		api.command("info vars");

		 api.command("info state");

		// api.createShell();
	}
	
}
